в секции .data глюк: несколько массивов (DUP) находятся под разными метками, но имеют один адрес в дебагере
Конкретно: k_konst и sha_hash
Решилось: неправильно использовал оператор DUP: Надо сначала писать сколько, а в скобках (чего). 10 dup (0), а я писал наоборот

Остановился на деление по модулю. Нужно разделить весь объём на величину отрезка. Пока исключение, видимо потому, что 64-битные регистры использую.
Решено: не обнулял rdx. Деление происходит не одного rax, а пары rdx:rax. Вылетало по переполнению.

Разобраться с прологом и эпилогом. Сейчас их нет и обращение идёт по недопустимому адресу т.к. в rbp ноль.
Решено: пролог и эпилог подставляются автоматически, если установить опции: 
    OPTION PROLOGUE:PrologueDef 
    OPTION EPILOGUE:EpilogueDef
Кстати, enter - везде пишут, что он тормозной и лучше использовать push ebp; mov ebp,esp. А sub esp,nnn нужен, чтобы вызываемая процедура могла делать push
и не перезаписывать при этом локальные переменные.

Написать в Excel скрипт, который в зависимости от i, даёт имя регистра в котором есть i-15, i-2 и i-16, выдавая при этом порядок байт, при котором команда pshufd выдвинет 
искомое слово на младшие 32 бита XMM регистра 
- Сделано

Закончил расчёт w16, считает павильно. Но пока не получилось правильно сохранить в XMM4